import axios from 'axios'

// 创建axios实例
const purposeRequest = axios.create({
  baseURL: '/resumeService',
  timeout: 10000
})

// 请求拦截器
purposeRequest.interceptors.request.use(
  config => {

    return config
  },
  error => {
    return Promise.reject(error)
  }
)

// 响应拦截器
purposeRequest.interceptors.response.use(
  response => {
    const { data } = response
    if (data.code === 200) {
      return data
    }
    return Promise.reject(new Error(data.message || '请求失败'))
  },
  error => {
    return Promise.reject(error)
  }
)

// 更新简历目的地接口参数类型
export interface UpdatePurposeParams {
  bizId: string | number
  productId: string | number
  lang: number
  path: string
}

// 更新简历目的地请求体类型
export interface UpdatePurposeBody {
  preferredCityDistrict: string
  preferredLocation: string
}

// 更新简历目的地响应类型
export interface UpdatePurposeResponse {
  code: number
  data: string
  message: string
  taskId: string
  time: string
}

/**
 * 更新简历目的地
 * @param params 请求参数
 * @param body 请求体
 * @returns Promise<UpdatePurposeResponse>
 */
export const updatePurpose = (
  params: UpdatePurposeParams,
  body: UpdatePurposeBody
): Promise<UpdatePurposeResponse> => {
  return purposeRequest.post('/updatePurpose', body, {
    params
  })
}

export default purposeRequest